﻿using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.Linq;
using T.REST;

namespace T.Rest
{
    public class Ressource
    {
        public Action<string> AssertFail { get; private set; }
        public Action<int, int, string> AssertAreNotEqualInts { get; private set; }
        public Action<int, int, string> AssertAreEqualInts { get; set; }
        public Action<Type, Type, string> AssertAreEqualTypes { get; private set; }
        public Action<bool, bool, string> AssertAreNotEqualBoolean { get; private set; }
        public RestConfiguration Configuration { get; internal set; }
        
        private Ressource() {}
        internal Ressource(Action<string> assertFail, 
            Action<Type, Type, string> assertAreEqualTypes, 
            Action<int, int, string> assertAreNotEqualInts, 
            Action<int, int, string> assertAreEqualInts,
            Action<bool, bool, string> assertAreNotEqualBoolean)
        {            
            AssertFail = assertFail;
            AssertAreEqualTypes = assertAreEqualTypes;
            AssertAreNotEqualInts = assertAreNotEqualInts;
            AssertAreEqualInts = assertAreEqualInts;
            AssertAreNotEqualBoolean = assertAreNotEqualBoolean;   
        }
    }
}
